all: exhaustive_table_generator exhaustive_query create_salty_authentication salty_authenticate create_authentication authenticate text_export_rainbow_table create_rainbow_table crack_using_rainbow_table.o crack_using_rainbow_table

clean:
	-rm load_file.o sha1.o md5.o misc.o generator.o DEHT.o exhaustive_table_generator.o exhaustive_table_generator exhaustive_query exhaustive_query.o create_salty_authentication create_salty_authentication.o salty_authenticate salty_authenticate.o authenticate authenticate.o create_authentication create_authentication.o Rainbow_Table.o text_export_rainbow_table text_export_rainbow_table.o create_rainbow_table create_rainbow_table.o crack_using_rainbow_table crack_using_rainbow_table.o

crack_using_rainbow_table: crack_using_rainbow_table.o generator.o misc.o sha1.o md5.o load_file.o DEHT.o Rainbow_Table.o
	gcc -lm -o crack_using_rainbow_table crack_using_rainbow_table.o generator.o misc.o sha1.o md5.o load_file.o DEHT.o Rainbow_Table.o

crack_using_rainbow_table.o: crack_using_rainbow_table.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm crack_using_rainbow_table.c

text_export_rainbow_table:text_export_rainbow_table.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o Rainbow_Table.o
	gcc -lm -o text_export_rainbow_table text_export_rainbow_table.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o Rainbow_Table.o

text_export_rainbow_table.o: text_export_rainbow_table.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm text_export_rainbow_table.c

create_rainbow_table: create_rainbow_table.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o Rainbow_Table.o
	gcc -lm -o create_rainbow_table create_rainbow_table.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o Rainbow_Table.o

create_rainbow_table.o: create_rainbow_table.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm create_rainbow_table.c

Rainbow_Table.o: Rainbow_Table.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm Rainbow_Table.c




authenticate: authenticate.o misc.o sha1.o md5.o
	gcc -lm -o authenticate authenticate.o misc.o sha1.o md5.o

authenticate.o: authenticate.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm authenticate.c

create_authentication: create_authentication.o misc.o sha1.o md5.o
	gcc -lm -o create_authentication create_authentication.o misc.o sha1.o md5.o

create_authentication.o: create_authentication.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm create_authentication.c

salty_authenticate: salty_authenticate.o misc.o sha1.o md5.o
	gcc -lm -o salty_authenticate salty_authenticate.o misc.o sha1.o md5.o

salty_authenticate.o: salty_authenticate.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm salty_authenticate.c

create_salty_authentication: create_salty_authentication.o misc.o sha1.o md5.o
	gcc -lm -o create_salty_authentication create_salty_authentication.o misc.o sha1.o md5.o

create_salty_authentication.o: create_salty_authentication.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm create_salty_authentication.c




exhaustive_query: exhaustive_query.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o
	gcc -lm -o exhaustive_query exhaustive_query.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o

exhaustive_query.o: exhaustive_query.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm exhaustive_query.c

exhaustive_table_generator: exhaustive_table_generator.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o
	gcc -lm -o exhaustive_table_generator exhaustive_table_generator.o generator.o load_file.o DEHT.o misc.o sha1.o md5.o

exhaustive_table_generator.o: exhaustive_table_generator.c
	gcc -ansi -pedantic-errors -c -Wall -g -lm exhaustive_table_generator.c

generator.o: generator.c generator.h misc.o
	gcc -ansi -pedantic-errors -c -Wall -g -lm generator.c

load_file.o: load_file.c load_file.h
	gcc -ansi -pedantic-errors -c -Wall -g -lm load_file.c 

DEHT.o: DEHT.c DEHT.h misc.o
	gcc -ansi -pedantic-errors -c -Wall -g -lm DEHT.c

misc.o: misc.c misc.h md5.o sha1.o
	gcc -ansi -pedantic-errors -c -Wall -g -lm misc.c

sha1.o: sha1.c sha1.h
	gcc -ansi -pedantic-errors -c -Wall -g -lm sha1.c

md5.o: md5.c md5.h
	gcc -ansi -pedantic-errors -c -Wall -g -lm md5.c

